package com.quectel.constant.core.partybuilding;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;

/**
 * 在这里编写说明
 *
 * @author: bob
 * @email: bob.yu@quectel.com
 * @date: 2023-06-01 15:09:00
 */
public class PartyBuildingConstants {

    public static final String PUSH_MSG_MEETING_TITLE = "【%s】您有新的会议邀约";

    public static final String PUSH_MSG_ACTIVITY_TITLE = "【%s】您有新的活动邀约";
    public static final String PUSH_MSG_PARTY_BUILDING_TASK_TITLE = "【党建任务】您有新的党建任务";
    public static final String PARTY_SURVEY_PUBLIC_OPINION_SURVEY_MSG_TITLE = "【民意调查】您有新的民意调查";
    public static final String PARTY_SURVEY_DEMOCRATIC_VOTING_MSG_TITLE = "【民主投票】您有新的民主投票";

    public static final String PARTY_SURVEY_PUBLIC_OPINION_SURVEY_REMIND_MSG_TITLE = "【民意调查】您的民意调查即将开始";
    public static final String PARTY_SURVEY_DEMOCRATIC_VOTING_REMIND_MSG_TITLE = "【民主投票】您的民主投票即将开始";
    public static final String PARTY_BUILDING_TRAINING_EXAM_MSG_TITLE = "【党课考试】您有新的党课考试";

    public static final String PUSH_MSG_TEMPLATE = "%s  %s-%s";

    public static final String PUSH_PARTY_BIRTH_MSG_TITLE = "【%s】政治生日快乐!";
    public static final String PUSH_PARTY_BIRTH_MSG_CONTENT = "%s";

    /**
     * 权限的下的党组织ids
     */
    public static final String PARTY_ID_COLLECTION_FLAG = "partyIds";

    @AllArgsConstructor
    public enum TodoType{
        /**
         * 待办类型
         */
        PARTY_EDUCATION_QUESTION((byte)1 ,"在线考试"),
        THREE_MEETINGS_ONE_LESSON((byte) 2,"三会一课"),
        THEME_PARTY_DAY((byte) 3,"主题党日"),
        PARTY_LIFE_MEETING((byte) 4,"组织生活会"),
        PARTY_ACTIVITY_BEGIN_REMIND((byte)5 , "主题活动"),
        PARTY_BUILDING_TASK((byte) 6 , "党建任务"),
        PARTY_COURSES((byte) 7 , "在线党课"),
        PARTY_SURVEY_PUBLIC_OPINION_SURVEY((byte) 8 , "民意调查"),
        PARTY_SURVEY_DEMOCRATIC_VOTING((byte) 9 , "民主投票");

        @Getter
        @Setter
        private Byte type;
        @Getter
        @Setter
        private String detail;

    }

    /**
     * 党建相关的参会人范围
     */
    @AllArgsConstructor
    public enum PersonType {
        /**
         * 全部
         */
        ALL((byte) 1),
        /**
         * 部分
         */
        PART((byte) 2)
        ;
        @Getter
        private final Byte type;
    }

}
